package org.jeecg.modules.system.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: 操作日志
 * @Author: jeecg-boot
 * @Date:   2022-12-30
 * @Version: V1.0
 */
@Data
@TableName("event_log")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="event_log对象", description="操作日志")
public class EventLog implements Serializable {
    private static final long serialVersionUID = 1L;

    /**ID*/
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "ID")
    private String id;
    /**表名*/
    @Excel(name = "表名", width = 15)
    @ApiModelProperty(value = "表名")
    private String tableName;
    /**操作数据的id*/
    @ApiModelProperty(value = "操作数据的id")
    private String dataId;
    /**操作类型*/
    @Excel(name = "操作类型", width = 15)
    @ApiModelProperty(value = "操作类型")
    private String eventType;
    /**操作人id*/
    @Excel(name = "操作人id", width = 15)
    @ApiModelProperty(value = "操作人id")
    private String userId;
    /**操作人姓名*/
    @Excel(name = "操作人姓名", width = 15)
    @ApiModelProperty(value = "操作人姓名")
    private String userName;
    /**操作*/
    @Excel(name = "操作", width = 15)
    @ApiModelProperty(value = "操作")
    private String event;
    /**操作时间*/
    @Excel(name = "操作时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "操作时间")
    private Date eventTime;
    /**当前登录用户部门编号*/
    @ApiModelProperty(value = "当前登录用户部门编号")
    private String sysOrgCode;
    /**租户id*/
    @Excel(name = "租户id", width = 15)
    @ApiModelProperty(value = "租户id")
    private Integer tenantId;
}
